################################################################################ 
#
# Replication code for:
# Empathy-based counterspeech can reduce racist hate speech
# in a social media field experiment
#
# PNAS 2021
# 
# Descriptive statistics
#
################################################################################ 



rm(list = ls())
setsave = T

################################################################################ 
#  LIBRARIES
################################################################################ 

library(dplyr)
library(Hmisc)
library(readr)
library(tidyr)
library(psych)
library(xtable) 

################################################################################ 
#   DATA AND FOLDER
################################################################################ 

wd = dirname(dirname(dirname(rstudioapi::getActiveDocumentContext()$path)))
wd_res = paste0(wd, '/results')
wd_data =  paste0(wd, '/data')

setwd(wd_data)

data = read.csv('main_dataset.csv')
data = data[(is.na(data$deleted_suspended)), ] # 1350

################################################################################ 
#   VARIABLES
################################################################################

outvars = c('num_hate_tweets_post', 'num_tweets_post', 'post_hate_share_tot',
            'outcome_deleted_specific', 'deletion_rate', 'tox_vader_neu_post')

outvars_name = c( '# Xenophobic Tweets', '# Total Tweets', 'Xenophobic Tweet Share',
                  'Xenophobic Tweet Deleted', 'Tweet Deletion Rate', 'Vader Negativity')

################################################################################ 
#   post treatment outcomes
################################################################################ 

container = data.frame()

for (j in 1:length(outvars)){
  var = outvars[j]
  print(var)
  sum = unname(describe(data[var])[c(2, 3, 4, 5, 8, 9)])
  container = rbind(container, c(outvars_name[j], sum))
}

colnames(container) = c('', 'n', 'mean', 'sd', 'median', 'min', 'max')
print(xtable(container, digits = c(0,0,0 ,2,2,2,2,2)) ,include.rownames =FALSE)

if (setsave==T){write.csv(container, paste0(wd_res, "/decriptive_stats.csv"))}

